package com.codeoss.framework.workflow.def;

import java.util.ArrayList;
import java.util.List;

import com.codeoss.framework.expression.Expression;

public abstract class NodeDef extends WorkflowElementDef {
	private String id;
	private Expression startEventExpression;
	private Expression endEventExpression;
	private List<LineDef> inLineList = new ArrayList<LineDef>();

	private List<LineDef> outLineList = new ArrayList<LineDef>();
    private WorkflowDef workflowDef;
    
	public void addInLine(LineDef lineDef) {
		inLineList.add(lineDef);
	}

	public List<LineDef> getInLineList() {
		return inLineList;
	}

	public void addOutLine(LineDef lineDef) {
		outLineList.add(lineDef);
	}

	public List<LineDef> getOutLineList() {
		return outLineList;
	}

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public Expression getStartEventExpression() {
		return startEventExpression;
	}

	public void setStartEventExpression(Expression startEventExpression) {
		this.startEventExpression = startEventExpression;
	}

	public Expression getEndEventExpression() {
		return endEventExpression;
	}

	public void setEndEventExpression(Expression endEventExpression) {
		this.endEventExpression = endEventExpression;
	}

	public WorkflowDef getWorkflowDef() {
		return workflowDef;
	}

	public void setWorkflowDef(WorkflowDef workflowDef) {
		this.workflowDef = workflowDef;
	}
}
